package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 论文管理对象 data_paper
 * 
 * @author ruoyi
 * @date 2024-11-13
 */
public class DataPaper extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 论文主键 */
    private Long paperId;

    /** 论文标题 */
    @Excel(name = "论文标题")
    private String paperTitle;

    /** 论文作者 */
    @Excel(name = "论文作者")
    private String paperAuthors;

    /** 论文图片 */
    @Excel(name = "论文图片")
    private String paperImage;

    /** 论文语言 */
    @Excel(name = "论文语言")
    private String paperLanguage;

    /** 摘要 */
    @Excel(name = "摘要")
    private String paperAbstract;

    /** 关键字 */
    @Excel(name = "关键字")
    private String paperKeywords;

    /** 论文pdf链接 */
    @Excel(name = "论文pdf链接")
    private String paperLink;

    /** 关联模型 */
    @Excel(name = "关联模型")
    private Long model;

    /** 发表日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发表日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date publicationDate;

    /** 论文分类 */
    @Excel(name = "论文分类")
    private Long paperType;

    /** 期刊名称 */
    @Excel(name = "期刊名称")
    private String journalName;

    /** 会议名称 */
    @Excel(name = "会议名称")
    private String conferenceName;

    /** 引用 */
    @Excel(name = "引用")
    private String citation;

    /** DOI号 */
    @Excel(name = "DOI号")
    private String doi;

    /** 研究领域 */
    @Excel(name = "研究领域")
    private String researchField;

    /** 文章类型 */
    @Excel(name = "文章类型")
    private String articleType;

    /** 基金支持 */
    @Excel(name = "基金支持")
    private String funding;

    /** 作者单位 */
    @Excel(name = "作者单位")
    private String authorAffiliations;

    /** 通讯作者 */
    @Excel(name = "通讯作者")
    private String correspondingAuthor;

    /** 引用次数 */
    @Excel(name = "引用次数")
    private Long citationCount;

    /** 在线链接 */
    @Excel(name = "在线链接")
    private String onlineLink;

    public void setPaperId(Long paperId) 
    {
        this.paperId = paperId;
    }

    public Long getPaperId() 
    {
        return paperId;
    }
    public void setPaperTitle(String paperTitle) 
    {
        this.paperTitle = paperTitle;
    }

    public String getPaperTitle() 
    {
        return paperTitle;
    }
    public void setPaperAuthors(String paperAuthors) 
    {
        this.paperAuthors = paperAuthors;
    }

    public String getPaperAuthors() 
    {
        return paperAuthors;
    }
    public void setPaperImage(String paperImage) 
    {
        this.paperImage = paperImage;
    }

    public String getPaperImage() 
    {
        return paperImage;
    }
    public void setPaperLanguage(String paperLanguage) 
    {
        this.paperLanguage = paperLanguage;
    }

    public String getPaperLanguage() 
    {
        return paperLanguage;
    }
    public void setPaperAbstract(String paperAbstract) 
    {
        this.paperAbstract = paperAbstract;
    }

    public String getPaperAbstract() 
    {
        return paperAbstract;
    }
    public void setPaperKeywords(String paperKeywords) 
    {
        this.paperKeywords = paperKeywords;
    }

    public String getPaperKeywords() 
    {
        return paperKeywords;
    }
    public void setPaperLink(String paperLink) 
    {
        this.paperLink = paperLink;
    }

    public String getPaperLink() 
    {
        return paperLink;
    }
    public void setModel(Long model) 
    {
        this.model = model;
    }

    public Long getModel() 
    {
        return model;
    }
    public void setPublicationDate(Date publicationDate) 
    {
        this.publicationDate = publicationDate;
    }

    public Date getPublicationDate() 
    {
        return publicationDate;
    }
    public void setPaperType(Long paperType) 
    {
        this.paperType = paperType;
    }

    public Long getPaperType() 
    {
        return paperType;
    }
    public void setJournalName(String journalName) 
    {
        this.journalName = journalName;
    }

    public String getJournalName() 
    {
        return journalName;
    }
    public void setConferenceName(String conferenceName) 
    {
        this.conferenceName = conferenceName;
    }

    public String getConferenceName() 
    {
        return conferenceName;
    }
    public void setCitation(String citation) 
    {
        this.citation = citation;
    }

    public String getCitation() 
    {
        return citation;
    }
    public void setDoi(String doi) 
    {
        this.doi = doi;
    }

    public String getDoi() 
    {
        return doi;
    }
    public void setResearchField(String researchField) 
    {
        this.researchField = researchField;
    }

    public String getResearchField() 
    {
        return researchField;
    }
    public void setArticleType(String articleType) 
    {
        this.articleType = articleType;
    }

    public String getArticleType() 
    {
        return articleType;
    }
    public void setFunding(String funding) 
    {
        this.funding = funding;
    }

    public String getFunding() 
    {
        return funding;
    }
    public void setAuthorAffiliations(String authorAffiliations) 
    {
        this.authorAffiliations = authorAffiliations;
    }

    public String getAuthorAffiliations() 
    {
        return authorAffiliations;
    }
    public void setCorrespondingAuthor(String correspondingAuthor) 
    {
        this.correspondingAuthor = correspondingAuthor;
    }

    public String getCorrespondingAuthor() 
    {
        return correspondingAuthor;
    }
    public void setCitationCount(Long citationCount) 
    {
        this.citationCount = citationCount;
    }

    public Long getCitationCount() 
    {
        return citationCount;
    }
    public void setOnlineLink(String onlineLink) 
    {
        this.onlineLink = onlineLink;
    }

    public String getOnlineLink() 
    {
        return onlineLink;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("paperId", getPaperId())
            .append("paperTitle", getPaperTitle())
            .append("paperAuthors", getPaperAuthors())
            .append("paperImage", getPaperImage())
            .append("paperLanguage", getPaperLanguage())
            .append("paperAbstract", getPaperAbstract())
            .append("paperKeywords", getPaperKeywords())
            .append("paperLink", getPaperLink())
            .append("model", getModel())
            .append("publicationDate", getPublicationDate())
            .append("paperType", getPaperType())
            .append("journalName", getJournalName())
            .append("conferenceName", getConferenceName())
            .append("citation", getCitation())
            .append("doi", getDoi())
            .append("researchField", getResearchField())
            .append("articleType", getArticleType())
            .append("funding", getFunding())
            .append("authorAffiliations", getAuthorAffiliations())
            .append("correspondingAuthor", getCorrespondingAuthor())
            .append("citationCount", getCitationCount())
            .append("onlineLink", getOnlineLink())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
